#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>


/*-----------------Lecture de l'en-t�te------------------------*/
int lire_index(unsigned int carac[], char nom[], int choix, short int *nbfich, short int mark)
{
	FILE *ARCHIVE;
	unsigned char charlu;
	unsigned int taille=0; /* Taille du fichier */

	/* Ouverture du fichier */
	if( (ARCHIVE=fopen(nom,"rb"))==NULL)
	{
		perror("Erreur => fonction lire_index(). Impossible d'ouvrir l'archive . ");
		exit(EXIT_FAILURE);
	}
	if(mark==1)
	{
		/* V�rification simpliste pour v�rifier que c'est bien une archive valide */
		fread(nbfich,sizeof(short int),1,ARCHIVE);
		taille=taille+sizeof(short int);
		if(choix==2 && *nbfich!=0) /* Si l'archive a �t� cr�e avec option 1 et qu'elle ne contient pas un fichier */
		{
			// ATTENTION j'ai pas compris ce que tu voulais faire là
			printf("L'archive n'a pas été créée avec option 1 (compress huffman). %d ???",*nbfich);
			exit(EXIT_FAILURE);
		}

	}
	/* Lecture du nombre d'occurences de chaque caract�re */
	fread(&charlu,sizeof(char),1,ARCHIVE);
	taille=taille+sizeof(char);
	do
	{
		fread(&carac[charlu],sizeof(int),1,ARCHIVE); /* Lecture du nombre d'occurences de chaque caract�re */
		fread(&charlu,sizeof(char),1,ARCHIVE); /* Lecture d'un nouveau caract�re */
		taille=taille+sizeof(int)+sizeof(char);
	}while(charlu); /* La fin de l'index est signal� par 0 */
	fclose(ARCHIVE);
	return taille;
}
